package com.cloudkinto.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;

import java.io.Serializable;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 *
 * </p>
 *
 * @author ding
 * @since 2022-11-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_order_bigcommerce")
public class OrderBigcommerceDo extends Model<OrderBigcommerceDo> {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 订单id
     */
    @TableField("order_id")
    private Long orderId;

    @TableField("company_id")
    private Long companyId;

    @TableField("shop_id")
    private Long shopId;

    @TableField("date_created")
    private Date dateCreated;

    @TableField("date_modified")
    private Date dateModified;

    @TableField("date_shipped")
    private Date dateShipped;

    @TableField("status_id")
    private Integer statusId;

    @TableField("status")
    private String status;

    @TableField("subtotal_inc_tax")
    private Double subtotalIncTax;

    @TableField("shipping_cost_inc_tax")
    private Double shippingCostIncTax;

    @TableField("handling_cost_inc_tax")
    private Double handlingCostIncTax;

    @TableField("wrapping_cost_inc_tax")
    private Double wrappingCostIncTax;

    @TableField("total_inc_tax")
    private Double totalIncTax;

    @TableField("items_total")
    private Integer itemsTotal;

    @TableField("items_shipped")
    private Integer itemsShipped;

    @TableField("payment_method")
    private String paymentMethod;

    @TableField("geoip_country_iso2")
    private String geoipCountryIso2;

    @TableField("currency_code")
    private String currencyCode;

    @TableField("staff_notes")
    private String staffNotes;

    @TableField("customer_message")
    private String customerMessage;

    @TableField("shipping_address_count")
    private Integer shippingAddressCount;

    @TableField("cart_id")
    private String cartId;

    @TableField("billing_name")
    private String billingName;

    @TableField("billing_company")
    private String billingCompany;

    @TableField("billing_address_1")
    private String billingAddress1;

    @TableField("billing_address_2")
    private String billingAddress2;

    @TableField("billing_city")
    private String billingCity;

    @TableField("billing_state")
    private String billingState;

    @TableField("billing_zip")
    private String billingZip;

    @TableField("billing_country")
    private String billingCountry;

    @TableField("billing_phone")
    private String billingPhone;

    @TableField("billing_email")
    private String billingEmail;

    @TableField("custom_status")
    private String customStatus;

    @TableField("create_time")
    private Date createTime;

    @TableField("update_time")
    private Date updateTime;

    @TableField("is_send_out")
    private Integer isSendOut;

    @TableField("is_upload_express")
    private Integer isUploadExpress;


    @Override
    protected Serializable pkVal() {
        return this.id;
    }

}
